﻿//访问者模式

using System;
using System.Collections.Generic;
using System.Text;

namespace designmodule.behavioralmodule.visitor
{
    public abstract class Visitor
    {
        public abstract void VisitConcreteElementA(ConcreteElementA concreteElementA);
        public abstract void VisitConcreteElementB(ConcreteElementB concreteElementB);

    }

    public class ConcreteVisitor1 : Visitor
    {
        public override void VisitConcreteElementA(ConcreteElementA concreteElementA)
        {
            
        }

        public override void VisitConcreteElementB(ConcreteElementB concreteElementB)
        {
            
        }
    }

    public class ConcreteVisitor2 : Visitor
    {
        public override void VisitConcreteElementA(ConcreteElementA concreteElementA)
        {
            
        }

        public override void VisitConcreteElementB(ConcreteElementB concreteElementB)
        {
        }
    }

}
